{ x_align: St.Align.MIDDLE,
x_fill: false });
- this._addKeys();
+ this._ensureKeysForGroup(this._keyboardController.getCurrentGroup());
+ this._setActiveLayer(0);
// Keyboard models are defined in LTR, we must override
// the locale setting in order to avoid flipping the
return layers;
},
- _addKeys: function () {
- let groups = this._keyboardController.getGroups();
- for (let i = 0; i < groups.length; ++i) {
- let gname = groups[i];
- this._groups[gname] = this._createLayersForGroup(gname);
- }
-
- this._setActiveLayer(0);
+ _ensureKeysForGroup: function(group) {
+ if (!this._groups[group])
+ this._groups[group] = this._createLayersForGroup(group);
},
_addRowKeys : function (keys, layout) {
},
_onGroupChanged: function () {
+ this._ensureKeysForGroup(this._keyboardController.getCurrentGroup());
this._setActiveLayer(0);
},